package jpg3.jpg3zad2;

import java.util.*;

/**
 * Autor: Daniel Michalski
 * Data: 05.07.13
 */

public class Main {
    public static void main(String[] args) {
        testujStos();
        testujKolejke();
        testujArrayList();
        testujPosortowanySet();
    }

    private static void testujPosortowanySet() {
        System.out.println("\nTest kolejki priorytetowej");
        Set<String> kolejka = new TreeSet<String>( new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return o1.compareTo(o2);
            }
        });

        kolejka.add("c");
        kolejka.add("b");
        kolejka.add("a");
        kolejka.add("d");
        kolejka.add("f");
        kolejka.add("e");

        Iterator<String> iterator = kolejka.iterator();

        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }
    }

    private static void testujArrayList() {
        System.out.println("\nTest ArrayList");
        List<String> arrayList = new ArrayList<String>();

        arrayList.add("jeden");
        arrayList.add("dwa");
        arrayList.add("trzy");

        Iterator<String> iterator = arrayList.iterator();

        while (iterator.hasNext()) {
            iterator.next();
        }

    }

    private static void testujKolejke() {
        System.out.println("\nTest kolejki");
        Queue<String> kolejka = new LinkedList<String>();

        kolejka.add("jeden");
        kolejka.add("dwa");
        kolejka.add("trzy");

        System.out.println(kolejka.poll());
        System.out.println(kolejka.poll());
        System.out.println(kolejka.poll());

    }

    private static void testujStos() {
        System.out.println("\nTest stosu");
        Stack<String> stos = new Stack<String>();

        stos.push("jeden");
        stos.push("dwa");
        stos.push("trzy");

        System.out.println(stos.pop());
        System.out.println(stos.pop());
        System.out.println(stos.pop());
    }
}
